home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tech Arsenal 1
/
Tech Arsenal (Arsenal Computer).ISO
/
tek-04
/
sfx5.zip
/
CD-BEEP.EXE
/
CDBEEP.DOC
< prev
next >
Wrap
Text File
|
1991-10-11
|
17KB
|
292 lines
____________________________
| |
| CBEEP - DBEEP |
| Replace BEEP With a Flash! |
|____________________________|
Copyright (C) 1991
>>-Swift-Ware->
Version 1.2
April 1991
I. Introduction
CBEEP, DBEEP, and the associated files were designed to allow the
replacement of the usual beep sound (which many programs use to
get the user's attention) with a visual flash. Potential uses
for such a capability are to allow a hearing-impaired person to
sense the beep or to avoid disturbing normal-hearing people yet
allow the program to signal the user. This is accomplished by
replacing the code which generates the beep sound with new
program instructions which replace the beep with a flash of
selectable size and duration. Although the copyright has been
retained, there is no charge for use of these programs and they
may freely be copied and distributed to others as long as they
are not modified and all files, including this documentation, are
included.
II. Installation and Use
The primary programs in this package are CBEEP.COM and DBEEP.COM.
They will usually be referred to without their .COM extensions
for convenience. DBEEP is first used to produce a new renamed
version of any program which has the beep replaced by a flash.
Then CBEEP is loaded into the computer's memory. CBEEP is the
program which actually makes the flash when called upon to do so
by the debeeped program. Finally the debeeped version of the
program is loaded and run. After some initial preparation, the
use of the debeeped version of a program can be made completely
automatic and transparent to the user.
First, the program to be debeeped must be selected. Programs can
be recognized by their file extension of .COM (for "command"
or .EXE (for "executable"). DBEEP, CBEEP, and the program to be
debeeped should all be placed in the same subdirectory. For
simplicity, this may be the subdirectory in which the program to
be debeeped was initially located. That subdirectory should next
be made the current subdirectory. Then the debeeping program
DBEEP should be started by entering its name from the DOS command
line. If the program to be debeeped was NOISY.EXE in subdirectory
C:\PROGRAMS, and if CBEEP and DBEEP were on a floppy disk
inserted in floppy disk Drive A:, this might be done by something
like
C:
CD \PROGRAMS
COPY A:CBEEP.COM
COPY A:DBEEP.COM
DBEEP
This will start execution of the debeeping program. DBEEP will
display a menu where <F1> may be pressed to display a help
screen, <F2> may be pressed to start the debeeping process, and
<F3> may be pressed to install CBEEP in the computer. For now,
let's wait a bit before installing CBEEP and go on to create the
debeeped version of the program. Press <F2> and you will be
prompted to enter the name of the program to be debeeped. In our
example, the program was NOISY.EXE in subdirectory PROGRAMS on
Drive C:, so enter
C:\PROGRAMS\NOISY.EXE
If you followed the previous instructions, the current
subdirectory would have been C:\PROGRAMS, so the full path
reference would not have been necessary, just entering NOISY.EXE
would have been ok. Next you will be prompted for the name of the
new (debeeped) version of the program which you want to create.
Select any name with no more than eight letters in the name and
use the same extension (the ".COM" or ".EXE") as was used in the
original program. It is very important to use the same extension
but the name should be different from the original name. In our
case we might select the name NOTNOISY.EXE as our new program.
After you enter the new program name, DBEEP will begin the
debeeping process. You will see from the display on the screen
that the process has begun and the display will indicate when the
debeeping process has finished; this may take a minute or so.
After DBEEP has finished, you may press <F3> to "launch" CBEEP.
This places into the computer's memory the program which produces
the flash when called upon to do so by the debeeped version of
the program. As part of the process of installing or launching
CBEEP, the CBEEP menu will be displayed which will allow
selecting the size and duration of the flash. Press the number
keys as indicated to select your preferred choice. Finally,
after completing the creation of the debeeped program (which you
have given a new name) and installing CBEEP, you are ready to
exit from DBEEP which may be done by pressing the <Esc> key. You
will now be back at the DOS prompt and may run your new debeeped
version of the program by entering its new name. In our example,
merely enter NOTNOISY. That's all there is to it.
In some cases, you may see the message "NO BEEPERS FOUND" even
though you know that the program produces beeps. In most cases,
this will not cause a problem and the beeps will properly be
intercepted and replaced by flashes. A further discussion of
this will be found in the section for Advanced Topics.
Once it has been created, it is not necessary to go through all
the previous steps to run the debeeped program again. Normally
CBEEP will stay in memory ready to do its job until the computer
is rebooted or the power is turned off. The debeeped version of
your program (i.e. NOTNOISY.EXE in the example above) will remain
available for use. All you have to do to run the program a
second time is to move to the proper subdirectory and enter the
debeeped program's name again. In our example,
C:
CD \PROGRAMS
NOTNOISY
If the computer has been rebooted or the power has been turned
off, it will be necessary to reload CBEEP in the computer's
memory. This can be done by entering DBEEP from the command line
and then pressing <F3> and continuing to install CBEEP as was
done before. A shortcut which can be used if you remember the
number of the menu item you used to select the flash size and
duration is to skip the use of DBEEP and just enter CBEEP /n from
the DOS command line, where for "n" you enter the menu item
selection. For example, to get a large, 1/2 sec. flash, enter
CBEEP /2.
If you use the debeeped versions of your programs frequently, you
may want to place the CBEEP /n command in your AUTOEXEC.BAT file
where it will cause CBEEP to be automatically installed each time
you reboot or power up your computer.
The previous instructions were written for use with a computer
with a hard disk. If you have two floppy disks instead, the
instructions will generally be the same except that you should
replace "C:" with "B:" wherever it appears. You will, however,
have to be sure there is enough room on the floppy in Drive B: to
hold CBEEP, DBEEP, and the new debeeped version of your program.
If you have only a single floppy disk, it is still possible to
follow a similar process. If you are a reasonably experienced
DOS user, you can probably figure out how to modify the above
instructions. If you are not sufficiently experienced, it will
probably be best to get help from a more experienced friend.
IV. Advanced Topics
The previous sections have been written assuming some familiarity
with DOS on the part of the user, but that he does not have
advanced knowledge. For the more advanced user, additional
information, not usually needed, will be included in this
section.
CBEEP.COM is a terminate-and-stay-resident (TSR) program which is
called by the debeeped program. DBEEP.COM searches the original
user's program and replaces all code which generates beeps with
code which generates a software interrupt. Normally interrupt
60H is used, but CHGINT.COM may be used to select another
interrupt if 60H causes interference with other users of the same
interrupt. CBEEP, DBEEP, and CHGINT should be placed in the same
subdirectory, and CHGINT run. That will display a menu allowing
selection of an alternate interrupt number in the range 60H to
66H. You should be very careful about using interrupt 67H as it
is used for LIM EMS (an Expanded Memory manager) in all versions
of DOS beginning with DOS 2.0 although only officially reserved
by DOS in DOS 4.0 and above.
C/DBEEP should be compatible with all versions of DOS from DOS
2.0 on and should work with MDA, Hercules, CGA, EGA, and VGA
display adapters.
If the space taken up by CBEEP is needed in order to run large
applications or if there are conflicts with other TSRs, CBEEP may
be uninstalled by entering CBEEP /U from the DOS command line.
This can be done only if no other TSRs have been loaded after
CBEEP. If you need to load additional TSRs after CBEEP and
unload them (as well as CBEEP), you may want to look at TSR
control programs such as PC Magazine's INSTALL and REMOVE or the
well known MARK and RELEASE (usually contained in a compressed
archive called TSRCOM.ARC or TSRCOM.ZIP) or their commercial
equivalents such as POPDROP.
If you want to suppress the messages output by CBEEP when it
loads and unloads, you can redirect the output to NUL. For
example CBEEP /1 > NUL will result in no output to the screen.
The installation message can also be suppressed by adding "x" to
the size/duration switch, CBEEP /1x.
Beeps can be generated in several ways. The best-behaved method
is to use DOS' BIOS services to send a BEL (character code 7) to
the screen. An alternate method is directly to manipulate the
hardware which controls the speaker. This is done by using the
OUT instruction to change the two low order bits of port 61H to
turn the speaker on and off. DBEEP looks for the code which
generates such instructions and replaces it with a software
interrupt (using either the default interrupt number of 60H or an
alternate interrupt number selected via CHGINT), padding as
needed with NOPs. A reasonableness check of surrounding data is
made in order to distinguish code from data prior to replacing
the beep codes. This technique for handling direct port writes
was suggested by Dave Fallen's SILENCER program code.
In some cases the message "NO BEEPERS FOUND" is produced by DBEEP
even though the code being debeeped is known to produce beeps.
This is generally caused by code which does not write directly to
hardware ports but merely uses DOS or BIOS services to produce a
beep by sending the BEL character to the screen. The interrupts
used by these services are trapped by CBEEP and thus the beeps
are properly converted into flashes even though no code is
modified by DBEEP. The message "NO BEEPERS FOUND" thus indicates
that no code replacement was necessary rather than that the
program being debeeped doesn't have any beep-producing code.
There are a few known limitations to this procedure. Compressed
executable code will not generally allow the instructions to be
properly identified. If the compression technique which has been
used is known, it may be possible to uncompress the code, apply
the debeeping program to the uncompressed version, and then
recompress the debeeped version. Microsoft Windows code may
cause problems. Programs which have been compressed can be
identified (along with the compression technique used) by the
utility CHK4COMP.EXE. Many commercial programs have been
compressed by Microsoft's EXEPACK; these may be unpacked by using
UPACKEXE.EXE. As of this writing, CHK4COMP could be obtained
from CompuServe IBMSYS in CKH4.ZIP; UPACKEXE was also available
from CompuServe IBMSYS in LZEX91.ZIP.
C/DBEEP has not been tested for use on overlays. For standard
overlays it may be possible to debeep the overlays just like
a .COM or .EXE file. Borland's VROOMM (TM) overlays are known to
cause problems (they are identifiable by the .VRM extension). In
particular, the file Q.VRM in Quattro Pro 1.0 may not be debeeped
using the standard method.
Generally it is anticipated that for a hearing-impaired user,
CBEEP will be installed by a line in AUTOEXEC.BAT and that the
debeeped program will be called instead of the standard version,
either through use of batch files or by renaming. In case the
application program needs to be used in both a normal and a
debeeped mode, both versions (with different names, of course)
may be used at any time. The original code is never modified.
V. Disclaimer
The software and documentation in this packare are provided "As
Is" without warranty of any kind. >>-Swift-Ware-> does not
warrant, guarantee, or make any representations regarding the
use, or the results of use, of this software. All risk taken in
the use of this software is assumed by you, the user, and not by
>>-Swift-Ware->, nor by any person or organization who may
distribute this product.
OTHER PROGRAMS by the AUTHOR:
BOBCAT ($15.00) ....... Lets anyone manage their Files and Directories,
with an easy press of a key you can copy, move
delete, view, mark, create, edit, compress, -
uncompress, format - plus enables the user to
assign up to 20 of his or her commands or favorite
programs to the menuing system and many more -
features from within a window environment...
MENU MAKER ($10.00) ... Makes it easy for anyone to create beautiful
stand alone - 3D Text mode graphic shadow box
window menus. Create up to 4 windows you can pop
down by the press of a function key then highlight
your commands or program names via menu bar or -
mouse to activate them.
REDEFINE ($10.00) ..... Enables assigning up to 20/60 character command -
strings to any of the Alt + Number keys or function
keys F1 to F10 plus recall your last 10 DOS commands.
Also includes many utilities - View files, Copy,
Delete, Rename, Show All Paths, NotePad, and many
more in an easily Deactivated Pop Down TSR.
GRAB4 ($10.00) ....... TSR that makes it an easy task to capture text
mode screens from within most any running program.
Enables saving screens as Executables including -
their color values, or save as a readable text mode
ASCII file, you can also edit any current or saved
screen and capture or append to another file.
Easily Deactivated.